-
Notifications
You must be signed in to change notification settings - Fork 542
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(py_wheel): Added requires_file
and extra_requires_files
attrs
#1710
Conversation
Relates to #644 |
368ef11
to
40890e2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the PR.
One more usecase which comes to my mind that this PR enables is to have a consistent wheel built with classic pyproject.toml which reads the requires directives from files (which is an example in pip-tools repo) and the rules_python packaging rule. I am not sure if this would be useful to someone, but this interop possibility is nice in its own right.
@aignas ready for another pass! 😄 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mostly LGTM, thanks for the improvements!
@aignas ready for another pass! 😄 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, minus the changelog part
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
@aignas I rebased since I didn't understand what was up with the merge queue. |
) The `requires_file` and `extra_requires_files` attributes added by #1710 break wheels by leaving trailing `;` and currently do not support `requirements.in` files with comments following a constraint on the same line. This PR fixes these issues.
The
compile_pip_requirements
rule promotes havingrequirements.in
files describe python dependencies. This change aims to allow these files to be the source of truth for constraints by allowing thepy_wheel
rule to use them for adding requirements to a wheel. This reduces overhead in needing to maintain two lists of equal information (one as he.in
and the other as starlark data).